//*****************************************************************************
// JFab (http://code.google.com/p/jfab)
// Copyright (c) 2011-2012 JFab.org
// Admin jfab@jeffreythompson.net
//
// See the file "LICENSE.txt" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
//*****************************************************************************

package org.jfab.core.adapter;

/**
 * Defines methods required by an adapter.
 * 
 * @param <T> Type parameter.
 */
public interface Adapter<T>
{
    /**
     * @param value Value.
     * 
     * @return a string representation of the given parameter.
     */
    String marshal(T value);

    /**
     * @param value Value.
     * 
     * @return the type.
     */
    T unmarshal(String value);
}
